Este driver permite o acesso a um Native Window existente. Esta janela é um elemento básico do sistema de interface com o usuário.
O canvas é criado através de uma chamada à função cdCreateCanvas(CD_NATIVEWINDOW, Data), após o que outras funções da biblioteca CD podem ser chamadas normalmente. Esta função cria um canvas CD baseado em um canvas do sistema existente. O parâmetro Data é um ponteiro para um handle do canvas; ele é dependente do sistema, possuindo um significado diferente em cada plataforma:
Macintosh: (em construção)
Microsoft Windows: é o handle da janela ou, em C um HWND.
X-Windows: "display window" ou, em C, "%p %lu" (utiliza a tela padrão).O string tem o mesmo formato do atributo IUP CONID, de modo que é possível criar um canvas utilizando este driver, porém com base em um canvas IUP. Assim, não é mais necessário utilizar o driver IUP. Por exemplo:
cdCreateCanvas(CD_NATIVEWINDOW, IupGetAttribute(myIupCanvas, "CONID")).
IupSetAttribute(myIupCanvas, "_CD_CANVAS", myCdCanvas);Qualquer quantidade desses canvas pode existir simultaneamente, mas eles não devem empregar a mesma janela. Vale ressaltar que é necessário chamar a função cdKillCanvas para finalizar o driver de forma apropriada.
Em CDLUA, o parâmetro de criação deve ser uma string no X-Windows e um userdata no Microsoft Windows.
FALHA: no SunOS, use "%d" ao invés de "%p", devido a uma falha interna na biblioteca run time desse OS.
Equivalente a função cdGetCanvasSize, mas retorna os valores relativos à tela principal do sistema de janelas.
Equivalente a função cdGetColorPlanes, mas retorna o valor relativo à tela principal do sistema de janelas.
O driver é amplamente dependente da plataforma. Para maiores detalhes, consulte o Comportamento das Funções de cada plataforma: Macintosh (QuickDraw), Microsoft Windows (GDI), X-Windows (XLIB). Entretanto, algumas funções têm um comportamento diferente das funções básicas de cada plataforma.